package net.lahuobao.finance.entity.paybill;

import java.math.BigDecimal;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.Table;

import org.hibernate.annotations.DynamicInsert;
import org.hibernate.annotations.DynamicUpdate;
import org.hibernate.annotations.GenericGenerator;

/**   
 * @Title: Entity
 * @Description: 444
 * @author zhangdaihao
 * @date 2016-07-25 14:35:47
 * @version V1.0   
 *
 */
@Entity
@Table(name = "tf_paybill_item", schema = "")
@DynamicUpdate(true)
@DynamicInsert(true)
@SuppressWarnings("serial")
public class PaybillEntity implements java.io.Serializable {
	/**主键*/
	private String id;
	/**开票总表ID*/
	private String  paybillId;
	/**运单号*/
	private Integer waybillId;
	/**开票主体*/
	private String paybillOrgan;
	/**成本票开具主体*/
	private String costOrgan;
	/**成本票开具状态*/
	private String costStatus;
	/**开票金额*/
	private BigDecimal paybillMoney;
	/**利润率*/
	private Double profit;
	/**成本标记状态[0:为回单][1:已回单]*/
	private String ishd;
	/**备注*/
	private String note;
	/**是否有效[0:无效][1:有效]*/
	private String isvalid;
	/**操作时间*/
	private java.util.Date operateTime;
	/**操作人*/
	private String operatePersonId;
	/**操作人Name*/
	private String operatePersonName;
	
	/**
	 *方法: 取得java.lang.String
	 *@return: java.lang.String  主键
	 */
	
	@Id
	@GeneratedValue(generator = "paymentableGenerator")
	@GenericGenerator(name = "paymentableGenerator", strategy = "uuid")
	@Column(name ="ID",nullable=false,length=32)
	public String getId(){
		return this.id;
	}

	/**
	 *方法: 设置java.lang.String
	 *@param: java.lang.String  主键
	 */
	public void setId(String id){
		this.id = id;
	}
	/**
	 *方法: 取得java.lang.Integer
	 *@return: java.lang.Integer  开票总表ID
	 */
	@Column(name ="PAYBILL_ID",nullable=true,length=50)
	public String  getPaybillId(){
		return this.paybillId;
	}

	/**
	 *方法: 设置java.lang.Integer
	 *@param: java.lang.Integer  开票总表ID
	 */
	public void setPaybillId(String  paybillId){
		this.paybillId = paybillId;
	}
	/**
	 *方法: 取得java.lang.Integer
	 *@return: java.lang.Integer  运单号
	 */
	@Column(name ="WAYBILL_ID",nullable=true,precision=10,scale=0)
	public Integer getWaybillId(){
		return this.waybillId;
	}

	/**
	 *方法: 设置java.lang.Integer
	 *@param: java.lang.Integer  运单号
	 */
	public void setWaybillId(Integer waybillId){
		this.waybillId = waybillId;
	}
	/**
	 *方法: 取得java.lang.String
	 *@return: java.lang.String  开票主体
	 */
	@Column(name ="PAYBILL_ORGAN",nullable=true,length=100)
	public String getPaybillOrgan(){
		return this.paybillOrgan;
	}

	/**
	 *方法: 设置java.lang.String
	 *@param: java.lang.String  开票主体
	 */
	public void setPaybillOrgan(String paybillOrgan){
		this.paybillOrgan = paybillOrgan;
	}
	/**
	 *方法: 取得BigDecimal
	 *@return: BigDecimal  开票金额
	 */
	@Column(name ="PAYBILL_MONEY",nullable=true,precision=11,scale=2)
	public BigDecimal getPaybillMoney(){
		return this.paybillMoney;
	}

	/**
	 *方法: 设置BigDecimal
	 *@param: BigDecimal  开票金额
	 */
	public void setPaybillMoney(BigDecimal paybillMoney){
		this.paybillMoney = paybillMoney;
	}
	/**
	 *方法: 取得java.lang.Double
	 *@return: java.lang.Double  利润率
	 */
	@Column(name ="PROFIT",nullable=true,precision=22)
	public Double getProfit(){
		return this.profit;
	}

	/**
	 *方法: 设置java.lang.Double
	 *@param: java.lang.Double  利润率
	 */
	public void setProfit(Double profit){
		this.profit = profit;
	}
	/**
	 *方法: 取得java.lang.String
	 *@return: java.lang.String  成本标记状态[0:为回单][1:已回单]
	 */
	@Column(name ="ISHD",nullable=true,length=2)
	public String getIshd(){
		return this.ishd;
	}

	/**
	 *方法: 设置java.lang.String
	 *@param: java.lang.String  成本标记状态[0:为回单][1:已回单]
	 */
	public void setIshd(String ishd){
		this.ishd = ishd;
	}
	/**
	 *方法: 取得java.lang.String
	 *@return: java.lang.String  备注
	 */
	@Column(name ="NOTE",nullable=true,length=2000)
	public String getNote(){
		return this.note;
	}

	/**
	 *方法: 设置java.lang.String
	 *@param: java.lang.String  备注
	 */
	public void setNote(String note){
		this.note = note;
	}
	/**
	 *方法: 取得java.lang.String
	 *@return: java.lang.String  是否有效[0:无效][1:有效]
	 */
	@Column(name ="ISVALID",nullable=true,length=2)
	public String getIsvalid(){
		return this.isvalid;
	}

	/**
	 *方法: 设置java.lang.String
	 *@param: java.lang.String  是否有效[0:无效][1:有效]
	 */
	public void setIsvalid(String isvalid){
		this.isvalid = isvalid;
	}
	/**
	 *方法: 取得java.util.Date
	 *@return: java.util.Date  操作时间
	 */
	@Column(name ="OPERATE_TIME",nullable=true)
	public java.util.Date getOperateTime(){
		return this.operateTime;
	}

	/**
	 *方法: 设置java.util.Date
	 *@param: java.util.Date  操作时间
	 */
	public void setOperateTime(java.util.Date operateTime){
		this.operateTime = operateTime;
	}
	/**
	 *方法: 取得java.lang.String
	 *@return: java.lang.String  操作人
	 */
	@Column(name ="OPERATE_PERSON_ID",nullable=true,length=20)
	public String getOperatePersonId(){
		return this.operatePersonId;
	}

	/**
	 *方法: 设置java.lang.String
	 *@param: java.lang.String  操作人
	 */
	public void setOperatePersonId(String operatePersonId){
		this.operatePersonId = operatePersonId;
	}
	/**
	 *方法: 取得java.lang.String
	 *@return: java.lang.String  操作人Name
	 */
	@Column(name ="OPERATE_PERSON_NAME",nullable=true,length=400)
	public String getOperatePersonName(){
		return this.operatePersonName;
	}

	/**
	 *方法: 设置java.lang.String
	 *@param: java.lang.String  操作人Name
	 */
	public void setOperatePersonName(String operatePersonName){
		this.operatePersonName = operatePersonName;
	}
	@Column(name ="cost_organ",nullable=true,length=100)
	public String getCostOrgan() {
		return costOrgan;
	}

	public void setCostOrgan(String costOrgan) {
		this.costOrgan = costOrgan;
	}
	@Column(name ="cost_status",nullable=true,length=1)
	public String getCostStatus() {
		return costStatus;
	}

	public void setCostStatus(String costStatus) {
		this.costStatus = costStatus;
	}
	
	
}
